java 重协商漏洞

您所在的位置:网站首页 tomcat 关闭ssl重协商功能 java 重协商漏洞

java 重协商漏洞

2024-07-15 03:53| 来源: 网络整理| 查看: 265

在客户端,我在jdk5u22上有Apache HTTP客户端.在服务器端,我在jdk6u27上有tomcat.

使用此设置,如果我尝试SSL客户端身份验证(双向SSL),则会导致服务器上出现“javax.net.ssl.SSLHandshakeException:不允许不安全的重新协商”,并且握手失败.如果我在服务器上设置系统属性sun.security.ssl.allowUnsafeRenegotiation = true和sun.security.ssl.allowLegacyHelloMessages = true,则会成功.

根据链接http://www.oracle.com/technetwork/java/javase/documentation/tlsreadme2-176330.html,这是因为JRE6u27具有RFC 5746实现,而下面的JRE5u26没有这个,因此两者都不兼容.不幸的是,5u22是最新的免费java 5版本.所以我想知道是否可以在没有ssl重新协商的情况下进行SSL客户端身份验证.

问候,

Litty Preeth

解决方法:

根据redhat站点https://access.redhat.com/kb/docs/DOC-20491#Renegotiations_disabled_in_Apache_Tomcat:

Tomcat可能会要求客户端使用客户端证书身份验证在某些配置中重新协商,例如,配置位于:

初始连接不需要客户端证书,例如:

1.使用JSSE的HTTPS连接器的clientAuth属性设置为

假.或者使用HTTPS连接器的SSLVerifyClient属性

OpenSSL设置为none.

2. Web应用程序指定了CLIENT-CERT身份验证方法

应用程序的web.xml文件的login-config部分.

因此,为了避免在tomcat中重新协商,只需通过为ssl设置clientAuth =“true”来使整个站点安全,而不仅仅是其中的一部分.

希望这有助于某人.

问候,

Litty

标签:java,authentication,ssl,httpclient

来源: https://codeday.me/bug/20190626/1294058.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3